#include <stdlib.h>
#include "abonne.h"
#include "GestionAbonne.h"
using namespace std;

//constructeur avec parametre
GestionAbonne:: GestionAbonne(long max)
{
taille= 0;
nbAbonne =0;
tab = new Abonne[max];//allocation du tableau d'Abonne
}


//initialisation du constructeur par copie(GestionAbonne H=G)
GestionAbonne :: GestionAbonne(const GestionAbonne &GA)
{
	taille = GA.taille;
	nbAbonne = GA.nbAbonne;
	tab = new Abonne[taille];
	for (long i =0; i<nbAbonne; i++)
	{
		tab[i]= GA.tab[i];
	}
}

//si on veut copier H=G dc le tab de H sera pointé sur le m tab que G==>
GestionAbonne& GestionAbonne::operator=(const GestionAbonne &GA)
{
	if (this != &GA)//le cas G=G pour f=vérifier que c'est pas la mm instence
	delete[] tab;
	taille = GA.taille;
	nbAbonne = GA.nbAbonne;
	tab = new Abonne[taille];
	for (long i =0; i<nbAbonne; i++)
	{
		tab[i]= GA.tab[i];
	}
	return *this;// pour le cas K=H=G dc il faut retourner H pour ensuite faire le test K=H
}


bool GestionAbonne::ajouter(const Abonne &A)
{
        if (nbAbonne==taille)
        {
                return false;
        }
        else
        {
                tab[nbAbonne]=A;
                nbAbonne++;
                return true;
        }
}

void GestionAbonne :: afficher()
{
        for (long i=0;i<nbAbonne;i++)
        {
                tab[i].afficher();
        }
}
void GestionAbonne::supprimer(long nTel)
{
	delete Abonne.numTel;
}

bool GestionAbonne::rechercher (long nTel)
{
	for (int i=0; i<nbAbonne; i++)
	{
		if (tab[i].get(numTel) == nTel)
		{
			GestionAbonne::supprimer(nTel);
			cout <<"Le num de tel a été supprimé"<<endl;
			return true;
		}
	}
	cout<<"le numero de tel n'existe pas"<<endl;
	return false;
	
	
}




GestionAbonne ::~GestionAbonne()
{       
        delete[]tab;
}










0










